//const db = wx.cloud.database()

import Api from '../../utils/person.js'

Page({
  data:{
    isAddShow:false,//添加框的显示与否
    isEditShow:false,//编辑框的显示与否
    typeList:[],//分类数据
    typename:'',//菜谱分类的名称
    id:'',//存储菜谱分类的id
  },
  async _doEditRecipeTypeById(){
    //console.log( this.data.typename,this.data.id )
    let result = await Api._updateById(this.data.id, {
      typename:this.data.typename
    } )
    //console.log(result,'更新菜谱分类的名称')
    if( result.stats.updated ){
      wx.showToast({
        title: '修改成功',
      })
    }
    this._getRecipeTypeList()
    /*
      { typename:'zbcd' }
    */
  },
   //显示与隐藏分类的编辑框
   _showEditInput(e){
      let { id,typename } = e.currentTarget.dataset
      this.data.id = id
      this.setData({
        isEditShow:true,
        isAddShow:false,
        typename
      })
  },
  //经常做一些页面的初始化操作
  onLoad(){
    this._getRecipeTypeList()
  },
  //根据id删除菜谱分类，我们底层用的是更新
  async _doDeleteRecipeType(e){
      //console.log( e.currentTarget.dataset.id )
      let id = e.currentTarget.dataset.id 
      let result = await Api._delteById( id )
      //console.log( result,'删除结果' )
      if( result.stats.updated ){
        wx.showToast({
          title: '删除成功',
        })
      }
      this._getRecipeTypeList()
  },
  //查询菜谱类别的数据方法
  async _getRecipeTypeList(){
      let result = await Api._findRecipeTypeList()
      //console.log(result,'查询成功')
      this.setData({
        typeList:result.data
      })
  },
  //显示与隐藏添加分类的编辑框
  _showAddInput(){
    this.setData({
      isAddShow:true,
      isEditShow:false
    })
  },
  //菜谱分类名称同步事件函数
  _addTypeHandleInput(e){
    //console.log(e,e.detail.value)
    this.setData({
      typename:e.detail.value
    })
  },
  //去添加菜谱分类信息   
  async _doAddRecipeType(){
    /*
      re-recipeType：菜谱分类的表名
      _id:分类的id，不用管，自动生成，同时也不支持修改
      _openid:不用它，自动生成，代表是哪个用户添加的，但是只能是管理的openid
      typename:分类名
    */
    let typename = this.data.typename
    //console.log(typename)
    if( !typename ){
      wx.showToast({
        title: '分类名称不能为空',
        icon:'none'
      })
      return
    }

    //追加数据
    /*
    let status = await db
    .collection('re-recipeType')
    .add({
      data:{
        status:1,
        typename
      }
    })
      */

      //追加之前先判断，有无此菜谱分类。没有则添加
      let result = await Api._findRecipeTypeByName(typename)
      //console.log(result,'查询结果1234')
      if( result.data.length == 1 ){
        wx.showToast({
          title: '已经存在',
          icon:'none'
        })
        return 
      }
      

     let status = await Api._doAddType(typename)

     //console.log( status,'添加成功' )
    if( status._id ){
      wx.showToast({
        title: '添加成功',
      })
      this._getRecipeTypeList()
      return
    }
  }
})